﻿using blackhouse.BlackApart.Business.Opinions;
using blackhouse.BlackApart.Web;
using blackhouse.BlackApart.Web.Navigation;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace blackhouse.StareKino.Web.Navigation {
    public class SKNavigationProvider : NavigationProvider {

        protected override UrlVisitor GetUrlVisitor(IOpinion opinion) {
            OpinionUrlVisitor v = new OpinionUrlVisitor();
            opinion.Visit(v);
            return v;
        }

        protected override UrlVisitor GetUrlVisitor(SearchState search) {
            SearchStateUrlVisitor v = new SearchStateUrlVisitor();
            search.Visit(v);
            return v;
        }

        protected override UrlVisitor GetUrlVisitor(ReservationPage page) {
            ReservationPageUrlVisitor v = new ReservationPageUrlVisitor();
            page.Visit(v);
            return v;
        }

        public override ReservationPage GetReservationPageFromRequest() {
            ReservationPageUrlVisitor v = new ReservationPageUrlVisitor();
            return v.ReadReservationPageFromRequest();
        }

    }
}